In networked systems various devices communicate with each other using a protocol and a data representation that is supported by both devices. Because many systems can communicate with multiple remote devices and many protocols and many data representations exist for a single type of communication, devices typically support multiple protocols and data representations. For example, computer systems can be configured to support Voice over IP (VoIP) using variable length packets as well as Voice over ATM (VoA) using standard length cells. For transmitting audio data, data representations such as, for example, G.711 and G.729 could be used. G.711 is an International Telecommunications Union (ITU) recommendation entitled “Pulse Code Modulation (PCM) of Voice Frequencies,” published November, 1988. G.729 is an ITU recommendation entitled “Coding of speech at 8 kbit/s using conjugate-structure algebraic-code-excited linear-prediction (CS-ACELP),” published Mar., 1996.
Currently, the data representation to be used for a particular communication is generally negotiated in a point-to-point basis. Thus, if a computer system is used to send voice communication signals to another computer system, software components on the receiving and on the transmitting systems negotiate the data representation to be used to communicate information. Point-to-point negotiation is often sufficient for communications between a pair of devices.
For example, a protocol that allows end points to negotiate a data representation to be used is H.323, which is a standard approved by the International Telecommunications Union (ITU) to promote compatibility in videoconference communications using Internet Protocol (IP) networks. Recommendation H.323 is entitled “Visual Telephone Systems and Equipment for Local Area Networks Which Provide a Non Guaranteed Quality of Service” and was published Nov. 1996. Other protocols can also allow end points to negotiate the data representation to be used.
However, as the number of devices and/or data representation involved in communications transaction increases, the complexity of the negotiation processes increases. For example, the process becomes more complex as the following increase: the number of devices, the number of device types (the more device types, the more the possible data representations, the more chance we need transcoding, the more opportunity to lose fidelity), the number of data representations (new compression schemes), new automated media processing technologies that are sensitive to transcoding information loss or costly double-transcoding (e.g., video speech recognition), or new media transmission options that may need automatic translation or recognition (e.g., 3-D rendering of artworks).